{ "cells": [ { "cell_type": "markdown", "id": "f1ec66ee", "metadata": {}, "source": [ "# Aula 8 - Análise de associação\n", "\n", "\n", "\n", "\n", "\n", "## 8.1 O pacote apyori\n", "Usaremos o pacote `apyori` para realizar as análises. Par ainstalar:\n", "\n", "`>> pip install apyori`" ] }, { "cell_type": "code", "execution_count": 1, "id": "f62d3ef9", "metadata": {}, "outputs": [], "source": [ "from apyori import apriori" ] }, { "cell_type": "markdown", "id": "881e76b4", "metadata": {}, "source": [ "O algoritmo apriori do pacote precisa que os dados estejam no formato de lista de listas. Considere o exemplo abaixo como template:" ] }, { "cell_type": "markdown", "id": "79f5d4a0", "metadata": {}, "source": [ "## 8.2 Um exemplo simples" ] }, { "cell_type": "code", "execution_count": 2, "id": "14e16c25", "metadata": {}, "outputs": [ { "name": "stdout", "output_type": "stream", "text": [ "RelationRecord(items=frozenset({'açucar'}), support=0.6666666666666666, ordered_statistics=[OrderedStatistic(items_base=frozenset(), items_add=frozenset({'açucar'}), confidence=0.6666666666666666, lift=1.0)])\n" ] } ], "source": [ "records = [[\"leite\",\"pao\",\"manteiga\",\"açucar\"],\n", " [\"leite\",\"pao\",\"manteiga\"],\n", " [\"leite\",\"pao\",\"coca\",\"açucar\"]]\n", "association_rules = apriori(records, min_support=0.0001, min_confidence=0.0, min_lift=0, min_length=1)\n", "association_results = list(association_rules)\n", "print(association_results[0])" ] }, { "cell_type": "markdown", "id": "81d3e482", "metadata": {}, "source": [ "## 8.3 Importando um banco de dados\n", "Usando o banco de dados `store_data.csv`, em que cada linha contém os itens comprados em uma loja na Frrança:" ] }, { "cell_type": "code", "execution_count": 3, "id": "4fc5db29", "metadata": {}, "outputs": [ { "data": { "text/html": [ "
\n", " | 0 | \n", "1 | \n", "2 | \n", "3 | \n", "4 | \n", "5 | \n", "6 | \n", "7 | \n", "8 | \n", "9 | \n", "10 | \n", "11 | \n", "12 | \n", "13 | \n", "14 | \n", "15 | \n", "16 | \n", "17 | \n", "18 | \n", "19 | \n", "
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | \n", "shrimp | \n", "almonds | \n", "avocado | \n", "vegetables mix | \n", "green grapes | \n", "whole weat flour | \n", "yams | \n", "cottage cheese | \n", "energy drink | \n", "tomato juice | \n", "low fat yogurt | \n", "green tea | \n", "honey | \n", "salad | \n", "mineral water | \n", "salmon | \n", "antioxydant juice | \n", "frozen smoothie | \n", "spinach | \n", "olive oil | \n", "
1 | \n", "burgers | \n", "meatballs | \n", "eggs | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
2 | \n", "chutney | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
3 | \n", "turkey | \n", "avocado | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "
4 | \n", "mineral water | \n", "milk | \n", "energy bar | \n", "whole wheat rice | \n", "green tea | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "NaN | \n", "